namespace CSharpePro._1021;

public class UserServiceImpl: UserService
{
    // 实现新增方法
    public void Add(User user)
    {
        if (user == null)
        {
            Console.WriteLine("新增失败：用户对象不能为空");
            return;
        }
        Console.WriteLine($"新增用户成功！{user}");
    }

    // 实现删除方法
    public void Delete(int userId)
    {
        if (userId <= 0)
        {
            Console.WriteLine("删除失败：用户ID必须大于0");
            return;
        }
        Console.WriteLine($"删除成功：ID为{userId}的用户已移除");
    }

    // 实现修改方法
    public void Update(User user)
    {
        if (user == null)
        {
            Console.WriteLine("修改失败：用户对象不能为空");
            return;
        }
        if (user.Id <= 0)
        {
            Console.WriteLine("修改失败：用户ID无效");
            return;
        }
        Console.WriteLine($"修改用户成功！{user}");
    }

    // 实现查询方法
    public User GetById(int userId)
    {
        if (userId <= 0)
        {
            Console.WriteLine("查询失败：用户ID必须大于0");
            return null;
        }
        // 直接返回一个临时构造的用户对象（无实际存储）
        return new User 
        { 
            Id = userId, 
            Name = $"用户{userId}", 
            Email = $"user{userId}@example.com" 
        };
    }
}
